package org.example.service;

import org.example.pojo.*;

import java.util.Map;

public interface InventoryService {


    /**
     * 库存列表
     * @return
     */
    PageBean<Inventory> list(Integer pageNum, Integer pageSize, String goodsName, Integer category);

    /**
     * 查询待入库的订单列表
     * @return
     */
    PageBean<StockInVo> stockInList(Integer pageNum, Integer pageSize, String orderNo, String startTime, String endTime);

    /**
     * 入库
     * @param stockInDto
     */
    void stockIn(stockInDto stockInDto);

//    /**
//     * 查询要出库的订单列表
//     * @return
//     */
//    PageBean<StockOutVo> stockOutList(Integer pageNum, Integer pageSize, String goodsName, String startTime, String endTime);
//
//    /**
//     * 详情
//     * @param id
//     * @return
//     */
//    StockOutVo detail(Integer id);
//
//    /**
//     * 出库
//     * @param map
//     */
//    void stockOut(Map<String, Object> map);

    /**
     * 新增出库单
     * @param dto
     */
    String outboundAdd(OutboundDto dto);

    /**
     * 查询出库单
     * @return
     */
    PageBean<OutboundOrderVo> outboundList( int pageNum, int pageSize, String orderId, Integer orderType, String startTime, String endTime);


    /**
     * 查询出库单详情
     * @param orderId
     * @return
     */
    OutboundOrderVo outboundDetail(String orderId);

    /**
     * 审批
     * @param orderId
     */
    void approve(String orderId);

    /**
     * 删除
     * @param orderId
     */
    void delete(String orderId);
}
